El diálogo de la programación
Piensa en la diferencia entre un simple "Hola, mundo!" y un juego de adivinanzas como la diferencia entre un monólogo y un diálogo. En un monólogo, el programa habla y termina. En un diálogo, el programa hace una pregunta, abre un receptor y pausa su reloj interno hasta que el usuario responda.
1. El preludio y el ámbito
Rust importa automáticamente un pequeño conjunto de elementos llamados el preludio en cada programa. Sin embargo, para tareas especializadas como la entrada desde terminal, debemos traer explícitamente el Biblioteca estándar al ámbito usando use std::io;. Esto pone un puente entre la lógica interna de tu programa y el entorno externo.
2. Macros frente a funciones
Notarás que println! termina con un signo de exclamación. Esto lo identifica como una macro. A diferencia de las funciones regulares, las macros pueden manejar un número variable de argumentos y realizar interpolación de cadenas (rellenando {adivina}) en tiempo de compilación.
3. El ciclo de vida interactivo
Cuando ejecutas cargo run, el programa se inicializa, alcanza io::stdin().read_line(), y suspende. Espera a que el usuario presione 'Enter', luego empaqueta esa entrada en un tipo Resultado para manejar de forma segura posibles fallos del hardware.